/**
 * 
 */
package ws;
import org.orm.PersistentException;

import SOAPVO.*;

/**
 * @author kron623
 *
 */
public class IngresoSOAP {

	public String addAnotacion( 
			String fecha , 
			String descripcion, 
			int idSubsector,
			int idTipoanotacion, 
			int idAnotador, 
			int idAlumno) throws PersistentException{

        String mensaje="";
		// si pasa todas las validaciones...
		orm.DAOFactory lDAOFactory = orm.DAOFactory.getDAOFactory();
		// Instancia DAO anotacion
		orm.dao.Tan_anotacionDAO lormTan_anotacionDAO = lDAOFactory.getTan_anotacionDAO();
		// instancia DAO subsector y obtengo el Subsector que concuerde con el idSubsector
		orm.dao.Tan_subsectorDAO lormTan_subsectorDAO = lDAOFactory.getTan_subsectorDAO();
		orm.Tan_subsector lormTan_subsector = lormTan_subsectorDAO.getTan_subsectorByORMID(idSubsector);
		// instacia DAO TipoAnotacion y obtengo el tipo de anotacion segun el IdTipoanotacion
		orm.dao.Tan_tipoanotacionDAO lormTan_tipoanotacionDAO = lDAOFactory.getTan_tipoanotacionDAO();
		orm.Tan_tipoanotacion lormTan_tipoanotacion = lormTan_tipoanotacionDAO.getTan_tipoanotacionByORMID(idTipoanotacion);
		// instacia DAO Alumno y obtengo el alumno segun el idAlumno
		orm.dao.Tan_alumnoDAO lormTan_alumnoDAO = lDAOFactory.getTan_alumnoDAO();
		orm.Tan_alumno lormTan_alumno = lormTan_alumnoDAO.getTan_alumnoByORMID(idAlumno);
		// instacia DAO Anotador y obtengo el anotador segun idAnotador
		orm.dao.Tan_anotadorDAO lormTan_anotadorDAO = lDAOFactory.getTan_anotadorDAO();
		orm.Tan_anotador lormTan_anotador = lormTan_anotadorDAO.getTan_anotadorByORMID(idAnotador);
		// Objeto VO para ingresar los datos de anotacion
		orm.Tan_anotacion lormTan_anotacion = lormTan_anotacionDAO.createTan_anotacion();
		// los traspaso a el objeto que contiene el orm
		lormTan_anotacion.setAn_fecha(fecha);
		lormTan_anotacion.setAn_descripcion(descripcion);
		lormTan_anotacion.setSu_id_subsector(lormTan_subsector);
		lormTan_anotacion.setTa_id_tipoanotacion(lormTan_tipoanotacion);
		lormTan_anotacion.setAn_id_anotador(lormTan_anotador);
		lormTan_anotacion.setAl_id_alumno(lormTan_alumno);
		
		try {
			// Metodo save de DAO
			lormTan_anotacionDAO.save(lormTan_anotacion);// se guarda la anotacion
			mensaje = "Agregado";
		} catch (PersistentException e) {
			e.printStackTrace();
			mensaje = "no agregado";
		}
		return mensaje;
	}
	
}
